2
แล็บ 3: AI เล่นโกะ (Connect 5)
PolyU COMP55112026-01-26

บทนำ Python: กระดาน

ก่อนที่เราจะสร้าง AI ได้ เราจำเป็นต้องมีตัวแทนดิจิทัลของโลก ในเกมโกะ โลกของเราคือตารางขนาด 15x15 หรือ 19x19 ใน Python วิธีมาตรฐานในการแสดงตารางคือ รายการของรายการ.

แนวคิด: สเปรดชีตในหน่วยความจำ

ลองนึกภาพรายการภายนอกเป็น "สเปรดชีต" ที่มีแถวทั้งหมด ทุกองค์ประกอบภายในเป็นรายการอื่นที่แสดงถึงคอลัมน์ของแถวนั้นๆ

การเข้าถึงข้อมูล

  • board[0] จะคืนค่าแถวบนสุดทั้งหมด (ซึ่งเป็นรายการ)
  • board[1][2] เข้าถึง แถวที่ 1, คอลัมน์ที่ 2.

⚠️ ข้อผิดพลาดเกี่ยวกับพิกัดที่พบบ่อย

ในทางคณิตศาสตร์ เราจะพูดว่า $(x, y)$ โดยที่ $x$ คือแนวนอน และ $y$ คือแนวตั้ง ในเมทริกซ์ของ Python เราเข้าถึงด้วย board[row][col].

เนื่องจาก "แถว" (Row) สอดคล้องกับตำแหน่งแนวตั้ง ($y$) และ "คอลัมน์" (Col) สอดคล้องกับตำแหน่งแนวนอน ($x$) โค้ดจึงมีผลเทียบเท่ากับ board[y][x]. อย่าสับสนเรื่องนี้ มิฉะนั้น AI ของคุณจะมองกระดานในแนวตั้งตรงกันข้าม!